package com.zzl.test.java8.interfaceEnhance;

/**
 * Java 8 对接口做了进一步的增强。
 * 在接口中可以添加使用 default 关键字修饰的非抽象方法。
 * 还可以在接口中定义静态方法。
 * 如今，接口看上去与抽象类的功能越来越类似了。
 * description: 接口增强（在接口中可以添加使用default关键字修饰的非抽象方法，
 * 还可以在接口中定义静态方法）---类似于Function<T, R>
 * @author 朱正磊
 * @date 2019-08-15 16:00:47
 */
@FunctionalInterface
public interface HerInterface<T, R> {

    // 唯一抽象方法
    R apply(T t);

    //default关键字修饰的非抽象方法
    default String find(T t) {
        return "good job " + t;
    }

    //static修饰的静态方法
    static <V> V save(V v) {
        return v;
    }

}
